package com.oa.biz;

import java.util.List;
import java.util.Map;

import com.oa.bean.DepartInfo;
import com.oa.bean.PreContract;
import com.oa.bean.Schedules;
import com.oa.bean.UserInfo;
import com.oa.util.PageUtil;

public interface SuperService<T> {

	public List<T> findAll(T t,PageUtil<T> pu);
	
	public List<T> query(Map<String,Object> param, T t);
	
	public List<T> search(Map<String, Object> param, T t);
	
	public T findOne(Map<String, Object> param,T t);
	
	public UserInfo login(UserInfo user);
	
	public T findById(T t,String... id);
	
	public boolean add(T t);
	
	public boolean modify(T t);
	
	public boolean remove(T t);
	
	public int getCount(T t);
	
	public int getCountByContidion(Map<String, Object> param,T t);

	public boolean addSchedule(Schedules sInfo, PreContract pInfo, String beginTime, String endTime, String createTime);

	public List<DepartInfo> getGivenDeparts(String branchId);

	public List<Schedules> searchSchedules(String deptId, String userName, String sDate);
}
